# -*- coding:utf-8 -*-
# @Author:🎈RedBalloon
# @Time:2022/9/30-10:42
# @File:09-proxy代理的使用.py
from urllib.request import Request, urlopen
from urllib.request import build_opener
from urllib.request import HTTPSHandler
from fake_useragent import UserAgent

url = 'http://www.baidu.com'
headers = {
    "User-Agent": UserAgent().random
}
request = Request(url, headers=headers)


handler = HTTPSHandler()
# Opener 通过 Handler 构建，可以使用 open() 方法，返回的类型和 urlopen() 相同。
opener = build_opener(handler)


# 我们的urllib库请求是都是使用urlopen()方法实现的。
# 实际上它的底层是使用HTTPHandler下Opener来实现的。查看urllib.request库里的urlopen()方法的源码。
# 可以看到 return opener.open(url, data, timeout)
response = opener.open(request)
print(response.read().decode())

# 较为复杂，初学者简单看看就好了
# 提供一个网址看看：https://www.cnblogs.com/ss-py/archive/2018/08/17/9492321.html
